/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package funda.appius.Presupuesto;

import funda.appius.arquitectura.AbstractFunda;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author payo
 */
public class Seccion_Insumos extends AbstractFunda{
    
    private String Nombre;
    private int IdListadoInsumos, IdSeccionInsumos;
    private ArrayList<Insumo_Catalogo> LstInsumoCatalogo;

    public int getIdListadoInsumos() {
        return IdListadoInsumos;
    }

    public void setIdListadoInsumos(int IdListadoInsumos) {
        this.IdListadoInsumos = IdListadoInsumos;
    }

    public int getIdSeccionInsumos() {
        return IdSeccionInsumos;
    }

    public void setIdSeccionInsumos(int IdSeccionInsumos) {
        this.IdSeccionInsumos = IdSeccionInsumos;
    }

    public ArrayList<Insumo_Catalogo> getLstInsumoCatalogo() {
        return LstInsumoCatalogo;
    }

    public void setLstInsumoCatalogo(ArrayList<Insumo_Catalogo> LstInsumoCatalogo) {
        this.LstInsumoCatalogo = LstInsumoCatalogo;
    }

    public String getNombre() {
        return Nombre;
    }

    public void setNombre(String Nombre) {
        this.Nombre = Nombre;
    }

    
    
    public Seccion_Insumos()
    {
        super();
    }

    public Seccion_Insumos(String Nombre, int IdListadoInsumos) {
        super();
        this.Nombre = Nombre;
        this.IdListadoInsumos = IdListadoInsumos;
        this.IdSeccionInsumos = Integer.parseInt(insertarId().toString());
    }
    
    @Override
    protected void fillFunda(ResultSet row) {
        try{
            int x =0;
            this.IdSeccionInsumos = row.getInt(++x);
            this.Nombre = row.getString(++x);
            this.IdListadoInsumos = row.getInt(++x);
            this.LstInsumoCatalogo = new ArrayList<Insumo_Catalogo>();
            List<AbstractFunda> abs = AbstractFunda.getAllFrom("insumocatalogo", "IdInsumoCatalogo", " IdSeccionInsumos", IdSeccionInsumos,Insumo_Catalogo.class);
            for(AbstractFunda val : abs)
                this.LstInsumoCatalogo.add((Insumo_Catalogo)val);
        }
        catch(Exception e){}
    }

    @Override
    protected void Comandos() {
        this.id = "IdSeccionInsumos";
        this.tabla = "seccioninsumos";
        this.strDelete = "DeleteSeccionInsumos";
        this.strInsertar = "InsertarSeccionInsumos";
        this.strInsertarId = "InsertarIdSeccionInsumos";
        this.strUpdate = "UpdateSeccionInsumos";
    }

    @Override
    public ArrayList<Object> getAtributos() {
        ArrayList<Object> lst = new ArrayList<Object>();
        lst.add(IdListadoInsumos);
        lst.add(Nombre);
        lst.add(IdSeccionInsumos);
        return lst;
    }
 
     @Override
    public Seccion_Insumos get(Object id) {
        AbstractFunda abs = AbstractFunda.getAbstractFunda(new Seccion_Insumos(),id,tabla,this.id);
        Seccion_Insumos c = (Seccion_Insumos)abs;
        return c;
    }
    
    public ArrayList<Seccion_Insumos> getAll() {
        List<AbstractFunda> abs = AbstractFunda.getAll(tabla,id,this.getClass());
        ArrayList<Seccion_Insumos> lst = new ArrayList<Seccion_Insumos>();
        for(AbstractFunda af : abs)
            lst.add((Seccion_Insumos)af);
        return lst;
    }
    
}
